package net.cyue.web.easyquery.core.http.handler.api;

import net.cyue.web.easyquery.core.http.api.IHTTPRequest;
import net.cyue.web.easyquery.core.http.api.IHTTPResponse;

import java.io.IOException;

/**
 * Web请求预处理器接口
 */
@FunctionalInterface
public interface IWebRequestPreHandler {
    /**
     * 预处理Web请求
     * @param request HTTP请求
     * @param response HTTP响应
     * @throws IOException IO异常
     * @return 是否继续处理Web请求，true表示继续处理，false表示不处理
     */
    boolean preHandle(
        IHTTPRequest request,
        IHTTPResponse response
    ) throws IOException;
}
